Scheduling device for customizable electronic notifications

ABSTRACT

An adjustable alarm indicator of an alarm application is described. The adjustable alarm indicator may be presented in connection with an alarm setting sequence. The adjustable alarm indicator may include a variable element having a variable annular shape, a first element associated with a first end of the variable element, and a second element associated with a second end of the variable element. The first element may be independently moveable to adjust the size of the variable element. The second element also may be independently moveable to adjust the size of the variable element.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.15/273,388 entitled “Scheduling Device for Customizable ElectronicNotifications,” filed on Sep. 22, 2016, which claims the benefit ofpriority of U.S. Provisional Application Ser. No. 62/348,665, filed Jun.10, 2016, entitled “Scheduling Device for Customizable ElectronicNotifications.” The disclosure of this application is incorporatedherein by reference in its entirety.

This application is related to and incorporates by reference for allpurposes the full disclosure of co-pending U.S. Provisional ApplicationSer. No. 62/348,648 entitled “Scheduling Customizable ElectronicNotifications” filed Jun. 10, 2016.

BACKGROUND

Sleeping is an activity that all people share, and recently more andmore information is becoming available about the positive impacts thatconsistent sleep habits can have on one's health. Electronic devicessuch as mobile phones, media players, and the like may offer alarm clockapplications capable of scheduling alarms similar to conventional alarmclocks. Each alarm clock application may have its own unique method forscheduling an alarm and otherwise interacting with the alarm clockapplication. Additionally, in recent years, specialized electronicdevices and applications have been developed that can track aspects ofone's sleep habits. Such devices, however, can be cost prohibitive tomost people, or otherwise difficult to operate. This can lead to limitedadoption of such specialized devices, or at least limited ongoing use.

BRIEF SUMMARY

Embodiments of the present disclosure can provide systems,computer-implemented methods, and computer-readable medium forinteracting with a sleep alarm. According to one embodiment, a methodmay be implemented by a computer system to present, at least in responseto a first user input, an alarm graphical user interface on a device.The alarm graphical user interface may include a generic alarm selectorthat, when selected, enables interaction with one or more genericalarms. The alarm graphical user interface may also include a sleepalarm selector that, when selected, enables interaction with a sleepalarm. The method may also include receiving a second user input thatidentifies selection of the sleep alarm selector. The method may alsoinclude presenting, at least in response to the second user input, asleep alarm view of the alarm graphical user interface on the device.The method may also include receiving sleep configuration information.The method may also include determining, based at least in part on thesleep configuration information, a first future time corresponding to asuggested bedtime. The method may also include presenting, on thedevice, a sleep alert based at least in part on the first future time.

According to one embodiment, a computerized system may include a memoryconfigured to store computer-executable instructions, an inputcomponent, a processor in communication with the memory configured toexecute the computer-executable instructions, and a display. The displaymay present, in response to a first user input, a graphical userinterface. The graphical user interface may include a first graphicaluser interface element that, when selected, enables interaction with oneor more generic alarms. The graphical user interface may also include asecond graphical user interface element that, when selected, enablesinteraction with a sleep alarm. The display may also present a sleepalarm view for scheduling the sleep alarm that presents an adjustablealarm indicator. The adjustable alarm indicator may include a firstfuture time indication corresponding to a suggested bedtime and a secondfuture time indication for triggering a wakeup alert of the sleep alarm.

According to one embodiment, a method may be implemented by a computersystem to at least provide a graphical user interface for presentationat a user device. The graphical user interface may include a first userinterface element corresponding to a sleep alarm and a second userinterface element corresponding to a generic alarm. The method may alsoinclude receiving, from the user device, a first communicationindicating selection of the first user interface element of thegraphical user interface corresponding to the sleep alarm. The methodmay also include providing a sleep alarm view of the graphical userinterface for presentation at the user device. The method may alsoinclude receiving configuration information generated based at least inpart on interaction with the sleep alarm view. The method may alsoinclude scheduling, based at least in part on the configurationinformation, a wakeup alert to be presented at a first future time. Themethod may also include scheduling, based at least in part on the firstfuture time and the configuration information, a sleep alert to bepresented at a second future time occurring prior to the first futuretime.

According to one embodiment, a method may be implemented by a computersystem to at least present a user interface including generic alarmoption and a sleep alarm option. The method may also include presentinga first view including generic alarm related options when the genericalarm option is selected. The method may also include presenting asecond view including sleep alarm related alarm options when the sleepalarm option is selected.

According to one embodiment, a computerized system may include a memoryconfigured to store computer-executable instructions, an inputcomponent, a processor in communication with the memory configured toexecute the computer-executable instructions, and a display. The displaymay present a sleep alarm view of a graphical user interface during ascheduling phase of an alarm setting sequence in response to a firstinput received at the input component. The sleep alarm view may presentan adjustable alarm indicator located in a first region of the sleepalarm view and a sleep graph located in a second region of the graphicalsleep alarm view. The adjustable alarm indicator may include a variableelement having a variable annular shape including a first independentlyadjustable element associated with a suggested bedtime and a secondadjustable element associated with an alarm time. The second adjustableelement may be moveable to cause the first adjustable element and thesecond adjustable element to move dependently. The sleep graph mayinclude one or more linear indicators, each corresponding to an intervaland indicating an amount of time slept during the interval and a sleeprange corresponding to a period and including an earliest bedtime and alatest wake time.

According to one embodiment, a method may be implemented by a computersystem to at least receive a first input a device to initiate an alarmsetting sequence. The method may also include, during the alarm settingsequence, presenting an adjustable alarm indicator located in a firstregion of a sleep alarm view of a graphical user interface. Theadjustable alarm indicator may include a variable element having avariable annular shape, a bedtime element associated with a first end ofthe variable element and representing a suggested bedtime, and a waketime element associated with a second end of the variable element andrepresenting a scheduled time for an alarm. Rotation of the bedtimeelement may adjust the suggested bedtime and cause the variable elementto have a larger variable annular shape or a smaller variable annularshape. Rotation of the wake time element may adjust the scheduled timeand the suggested bedtime and cause the variable element, the bedtimeelement, and the wake time element to rotate relative to a portion ofthe variable element.

According to one embodiment, a method may be implemented by a computersystem to at least provide a user interface for presentation at a userdevice. The user interface may include an adjustable alarm indicatorlocated in a first region of the user interface, and a sleep graphlocated in a second region of the user interface. The adjustable alarmindicator may include at least two variable ends corresponding to afirst time and a second time, respectively. The sleep graph may includeone or more linear indicators and a sleep range. Each linear indicatormay correspond to an interval indicating an amount of time slept duringthe interval and may be generated based at least in part on sleep data.The sleep range may correspond to a period and include an earliestbedtime and a latest wake time for the period. The method may alsoinclude receiving, from the user device, a first communicationindicating an adjustment to the first time. The method may also includedetermining that the adjustment results in the first time fallingoutside the sleep range including the earliest bedtime and the latestwake time. The method may also include generating an updated sleep graphthat includes an updated sleep range for the period and that includes atleast one of an updated earliest bedtime or an updated latest wake time.The method may also include providing the updated sleep graph forpresentation at the user device.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a simplified block diagram depicting an example flowfor interacting with a sleep alarm as described herein, according to atleast one example.

FIG. 2 illustrates example views of an alarm graphical user interface ona user device for interacting with a sleep alarm as described herein,according to at least one example.

FIG. 3 illustrates example views of an alarm graphical user interface ona user device for interacting with a sleep alarm as described herein,according to at least one example.

FIG. 4 illustrates example views of an alarm graphical user interface ona user device for interacting with a sleep alarm as described herein,according to at least one example.

FIG. 5 illustrates an example sleep alarm view of an alarm graphicaluser interface on a user device for interacting with a sleep alarm asdescribed herein, according to at least one example.

FIG. 6 illustrates example sleep alarm views of an alarm graphical userinterface on a user device for interacting with a sleep alarm asdescribed herein, according to at least one example.

FIG. 7 illustrates example sleep alarm views of an alarm graphical userinterface on a user device for interacting with a sleep alarm asdescribed herein, according to at least one example.

FIG. 8 illustrates example sleep alarm views of an alarm graphical userinterface on a user device for interacting with a sleep alarm asdescribed herein, according to at least one example.

FIG. 9 illustrates an example sleep graph of a sleep alarm view of analarm graphical user interface for interacting with a sleep alarm asdescribed herein, according to at least one example.

FIG. 10 illustrates an example environment in which techniques relatingto interacting with a sleep alarm as described herein may beimplemented, according to at least one example.

FIG. 11 illustrates a simplified block diagram including an examplearchitecture for interacting with a sleep alarm as described herein,according to at least one example.

FIG. 12 illustrates a flowchart of a method of interacting with a sleepalarm as described herein, according to at least one example.

FIG. 13 illustrates a flowchart of a method of interacting with a sleepalarm as described herein, according to at least one example.

FIG. 14 illustrates a flowchart of a method of interacting with a sleepalarm as described herein, according to at least one example.

FIG. 15 illustrates an electronic device for interacting with a sleepalarm as described herein, according to at least one example.

FIG. 16 illustrates a simplified block diagram including components ofan example electronic device for interacting with a sleep alarm asdescribed herein, according to at least one example.

FIG. 17 illustrates a simplified diagram including example electronicdevices for interacting with a sleep alarm as described herein,according to at least one example.

FIG. 18 illustrates an electronic device for interacting with a sleepalarm as described herein, according to at least one example.

DETAILED DESCRIPTION

In the following description, various examples will be described. Forpurposes of explanation, specific configurations and details are setforth in order to provide a thorough understanding of the examples.However, it will also be apparent to one skilled in the art that theexamples may be practiced without the specific details. Furthermore,well-known features may be omitted or simplified in order not to obscurethe example being described.

Examples of the present disclosure are directed to, among other things,methods, systems, and computer-readable media for interacting with asleep alarm provided on an electronic device. In particular, this caninclude presenting the sleep alarm in a manner that enables ease ofaccess and ease of scheduling. For example, an alarm application orclock application can be provided that historically includes an optionfor interacting with a generic alarm. In some examples, existing usersof the alarm application may be accustomed to accessing the genericalarm in the alarm application. Thus, it may be desirable to add thesleep alarm and its attendant functionality to the existing alarmapplication adjacent to the generic alarm. The sleep alarm may also beincluded in its own application.

The sleep alarm described herein may improve the functioning of a userdevice on which the sleep alarm operates. For example, the sleep alarmmay enable additional alarm options as compared to other alarmapplications. These sleep alarm options may include scheduling andpresenting a sleep alert (e.g., a sleep notification) prior to asuggested bedtime, scheduling and presenting a wake alert (e.g., a wakenotification) at a scheduled wake time, and other similar options. Thealarm application may also use actual sleep data associated with a userto customize the scheduling of these alerts. The sleep data may also bepresented to the user in a way that assists the user improve and/ormaintain health sleep habits.

When the sleep alarm is included in the alarm application, the sleepalarm may be presented as a sleep alarm view of an alarm graphical userinterface. The sleep alarm view may include a combination of userinterface elements for presenting information and receiving inputs. Forexample, the view may include an adjustable alarm indicator that has anannular (e.g., ring) shape. The adjustable alarm indicator maygraphically represent aspects of the sleep alarm. For example, theadjustable alarm indicator may represent a suggested bedtime, ascheduled time for a wakeup alert, and a sleep duration corresponding tothe suggested bedtime and the scheduled time for the wakeup alert.Elements of the adjustable alarm indicator may be independently and/ordependently adjustable to adjust the suggested bedtime, the scheduledtime for the wakeup alert, and the sleep duration. The sleep alarm mayalso include functionality to schedule and present a sleep alert priorto the suggested bedtime. This sleep alert may prompt the user to beginher bedtime routine in order to be in bed and asleep at the suggestedbedtime. The sleep alarm view may also include a sleep graph thatrepresents historical sleep data for a particular period. The sleep datamay be represented as a set of linear indicators, each indicating asleep interval, a beginning of the sleep interval, an end of the sleepinterval, and any recorded interruptions during the sleep interval. Thesleep graph, including the linear indicators, may enable to user tographically evaluate her sleep routine in terms of consistency (e.g.,retiring and rising at similar times each day), sleep amount (e.g., howmany total hours “in bed” or asleep), and interruptions (e.g., timesduring night when she was not asleep).

Turning now to the figures, FIG. 1 illustrates a simplified blockdiagram 100 depicting an example process 102 for interacting with asleep alarm, according to at least one example. The diagram 100 caninclude a user device 104. The user device 104 may be any suitableelectronic device such as a mobile phone, a media player, a tabletdevice, a personal computer, and the like. The process 102 may begin at106 by the user device 104 receiving selection of an alarm (e.g., clock)application 108 by a user 130. The selection (e.g., as illustrated by anenclosed circular element with dimpled hatching) of the alarmapplication 108 may be received at an input device of the user device104 such as a touchscreen or other suitable input device. In response tothe selection at 106, the process 102 may include, at 110, presenting analarm graphical user interface 112. The alarm graphical user interface112 may be presented on the user device 104. The alarm graphical userinterface 112 can include one or more views corresponding to alarms,clocks, and timers. For example, a first view may correspond to a worldclock option, a second view may correspond to a generic alarm option, athird view may correspond to a sleep alarm option, a fourth view maycorrespond to a stopwatch option, a fifth view may correspond to a timeroption, and so on and so forth.

At 114, the process 102 may include receiving selection of a sleep alarmselector 116. The selection of the sleep alarm selector 116 at 114 maybe received at the input device of the user device 104. The sleep alarmselector 116 may be presented together with a generic alarm selector128. Selection of the generic alarm selector 128 may cause presentationof a generic alarm view of the alarm graphical user interface 112.

In response to the selection at 114, the process 102 may include, at118, presenting a sleep alarm view 120 of the alarm graphical userinterface 112. The sleep alarm view 120 may include an adjustable sleepalarm indicator 122 and a sleep graph 124. The sleep alarm view 120 maybe used to schedule aspects of a sleep alarm, including a sleep alertand a wakeup alert, and to implement other techniques relating tointeracting with sleep alarms, as described herein. In some examples,elements of the adjustable sleep alarm indicator 122 may be moveable,rotatable, or otherwise adjustable as part of scheduling the sleepalarm. For example, at 126, the process 102 may include receiving sleepconfiguration information. In some examples, at least a portion of thesleep configuration information may be received via interactions (e.g.,movements, rotations, adjustments, inputs, etc.) with the adjustablesleep alarm indicator 122.

At 130, the process 102 may include scheduling one or more alerts. Thiscan include scheduling a sleep alert to go off at a first future timeprior to a bedtime and scheduling a wakeup alert to go off at a secondfuture time at a wake time. The first future time may be computed as anoffset from a suggested bedtime and/or may be based at least in part onthe sleep configuration information received at 126. The second futuretime may also be based at least in part on the sleep configurationinformation received at 126.

At 132, the process 102 may include presenting the one or more alerts.The sleep alert can be presented at the user device 104 in any suitablemanner. The wakeup alert can also be presented at the user device 104 inany suitable manner. In some examples, the one or more alerts may bepresented and/or executed on other user devices, certain electronicdevices, and the like. For example, an alert may be presented byinstructing a network-enabled light fixture to slowly increase inintensity. This is in addition to or in place of causing an audiblesound to be output by the user device 104.

FIGS. 2-4 illustrate the user device 104 including initial configurationviews 202-216 of a configuration flow 200 depicting user interfaceelements relating to interacting with a sleep alarm, according to atleast one example. Specifically, the initial configuration views 202-216are examples of views of the alarm graphical user interface 112 that maybe presented on a display of the user device 104. As described herein,the display of the user device 104 can be touch sensitive and/orpressure sensitive. In this manner, the display can function as an inputcomponent for receiving user input. Thus, the initial configurationviews 202-216 (and other views described herein) are examples of viewsof a user interface that may be suitable for presentation on a touchsensitive and/or pressure sensitive display of the user device 104. Itshould be understood, however, that the initial configuration views202-216 (and other views described herein) may be adapted for displaysthat are not touch sensitive and/or pressure sensitive. The initialconfiguration views 202-216 may be presented prior to an initialpresentation of the sleep alarm view 120. The initial configurationviews 202-216 may function to guide the user 130 through a configurationphase of an alarm setting sequence in order to configure aspects of asleep alarm. Thus, using some initial configuration views 202-216, theuser 130 may be presented with information about the sleep alarm,benefits of sleep, and/or any other suitable information pertaining tothe sleep alarm. In some examples, using some initial configurationviews 202-216, users may input information used to configured aspects ofthe sleep alarm and/or other alarms. In some examples, the initialconfiguration views 202-216 are presented periodically such that theuser 130 can reevaluate her sleep routine.

As illustrated with reference to the initial configuration view 202, thealarm graphical user interface 112 may include, a clock selector 218,the generic alarm selector 128, the sleep alarm selector 116, astopwatch selector 220, and a timer selector 222. The selectors may bepresented as tabs along a bottom portion of the alarm graphical userinterface 112. Selection of any of the clock selector 218, the genericalarm selector 128, the sleep alarm selector 116, the stopwatch selector220, or the timer selector 222, may cause presentation of a differentview of the alarm graphical user interface 112. For example, selectionof the clock selector 218 may cause presentation of a clock view thatincludes one or more clocks corresponding to one or more time zones.Selection of the generic alarm selector 128 may cause presentation of ageneric alarm view that includes one or more generic alarms, which maybe used to schedule the generic alarms. Selection of the sleep alarmselector 116 may cause presentation of the sleep alarm view 120, asdescribed in detail herein. Selection of the stopwatch selector 220 maycause presentation of a stopwatch view that includes stopwatchfunctionality. Selection of the timer selector 222 may causepresentation of a timer view that includes one or more timers, which maybe used to schedule the timers.

Turning now to the initial configuration views 202-216 in more detail,the initial configuration view 202 may represent a welcome view. Thewelcome view can include information about the functionality of thesleep alarm and the benefits of sleep.

The initial configuration view 204 may be presented in response to userinput with the initial configuration view 202 of the alarm graphicaluser interface 112. For example, the user 130 may select “Continue” orthe view may change in any other suitable manner (e.g., after a certainperiod of time, etc.). The initial configuration view 204 may representa day schedule view. The day schedule view can include a prompt thatrequests user input relating to which days the sleep alarm should gooff. The user 130 may select which days by selecting one or more alarmselectors from a set of alarm selectors 224. The set of alarm selectors224 may correspond to a week period, a shorter period, or a longerperiod.

The initial configuration view 206 may be presented in response to userinput with the initial configuration view 204. For example, the user 130may interact with the set of alarm selectors 224 to select one or moredays on which the sleep alarm will go off. In response, the initialconfiguration view 206 may be presented. The initial configuration view206 may represent an alarm time schedule view. The alarm time scheduleview can include a prompt that requests user input relating to what timeeach day (selected using the initial configuration view 204) the sleepalarm should go off. The user 130 may select a time by interacting witha time selector 226.

The initial configuration view 208 may be presented in response to userinput with the initial configuration view 206. For example, the user 130may interact with the time selector 226. In response, the initialconfiguration view 208 may be presented. The initial configuration view208 may represent a sleep duration view. The sleep duration view caninclude a prompt that requests user input relating a sleep durationcorresponding to the sleep alarm. The user 130 may select a sleepduration by interacting with a sleep duration selector 228. Using thesleep duration and/or the alarm time, an appropriate time for asuggested bedtime may be determined.

The initial configuration view 210 may be presented in response to userinput with the initial configuration view 208. For example, the user 130may interact with the sleep duration selector 228. In response, theinitial configuration view 210 may be presented. The initialconfiguration view 210 may represent a sleep alert view. The sleep alertview can include a prompt that requests user input relating to when toschedule a sleep alert. The sleep alert may be an alert, similar to analarm alert, that goes off at an offset time prior to a suggestedbedtime. For example, for a suggested bedtime of 10:00 pm, a sleep alertmay be scheduled to go off at 9:30 pm (e.g., offset 30 minutes prior tothe suggested bedtime). The user 130 may select a sleep alert offsettime by interacting with a sleep reminder selector 230. Once the sleepalert offset time has been selected, the sleep alert may be scheduled.

The initial configuration view 212 may be presented in response to userinput with the initial configuration view 210. For example, the user 130may interact with the sleep reminder selector 230. In response, theinitial configuration view 212 may be presented. The initialconfiguration view 212 may represent a sound selection view. The soundselection view may include one or more prompts that request user inputrelating to characteristics of how alerts associated with the sleepalarm and the sleep reminder will be presented. For example, the initialconfiguration view 212 may include a bedtime sound selector 232 and awakeup sound selector 234. The bedtime sound selector 232 may correspondto the sleep reminder selected in the sleep reminder view (e.g., theinitial configuration view 210). The wakeup sound selector 234 maycorrespond to the sleep alarm configured in the initial configurationviews 204, 206. In some examples, instead of or in addition to sound,the selectors 232, 234 may enable selection of one or more other meansfor presenting alerts. For example, the other means may include changinga brightness on the screen of the user device 104 (or other userdevice), causing the user device 104 (or other user device) to vibrate,adjusting volume on the user device 104 (or other user device),adjusting elements in a sleeping environment (e.g., opening curtains,etc.), and the like.

The initial configuration view 214 may be presented in response to userinput with the initial configuration view 212. For example, the user 130may interact with the selectors 232, 234. In response, the initialconfiguration view 214 may be presented. The initial configuration view214 may represent an informational view. The informational view mayinclude information about the sleep alarm and, in particular, aspects ofthe adjustable sleep alarm indicator 122 and/or the sleep graph 124.

The initial configuration view 216 may be presented in response to userinput with the initial configuration view 214. The initial configurationview 216 may represent the sleep alarm view 120. As described herein,the sleep alarm view 120 may include the adjustable sleep alarmindicator 122 and the sleep graph 124. The sleep alarm view 120 may alsoinclude a suggested bedtime indicator 236 and a wake time indicator 238.In some examples, each of the indicators 236, 238 may be selectable inorder to adjust the suggested bedtime and the wake time, respectively.For example, the suggested bedtime indicator 236 may be selected by userinput that identifies the “Bedtime” text, the graphical element, or thetime “10:30 pm.” Once selected, the time 10:30 pm can be adjusted byinputting an updated time or selecting an updated time from a list oftimes. The wake time indicator 238 may be selected and adjusted in asimilar manner.

FIG. 5 illustrates the sleep alarm view 120 of the alarm graphical userinterface 112 on the user device 104, according to at least one example.FIG. 5 may illustrate aspects of the sleep alarm view 120 in greaterdetail than previous figures described herein. The sleep alarm view 120may be presented as part of a scheduling phase of an alarm settingsequence. In some examples, the sleep alarm view may be presented aspart of a configuration phase of the alarm setting sequence. The sleepalarm view 120 may include the adjustable sleep alarm indicator 122, thesleep graph 124, the suggested bedtime indicator 236, and the wake timeindicator 238. The suggested bedtime indicator 236 and the wake timeindicator 238 may be disposed in a first region 240 of the sleep alarmview 120. The adjustable sleep alarm indicator 122 may be disposed in asecond region 242 of the sleep alarm view 120. The sleep graph 124 maybe disposed in a third region 244 of the sleep alarm view 120. In someexamples, the sleep alarm view 120, as illustrated in FIG. 5 orotherwise, may be presented during a scheduling phase of an alarmsetting sequence. In some examples, at least a portion of configurationinformation may be received via interaction with the sleep alarm view120 of the alarm graphical user interface 112, as illustrated in FIG. 5.

The adjustable sleep alarm indicator 122 may include a variablegraphical element 246 having a variable annular shape (e.g., ringshape). The variable graphical element 246 may be aligned relative to acenter point 248 of the adjustable sleep alarm indicator 122. Thevariable graphical element 246 may be configured to move within a fixedannular range 250 relative to the center point 248 or other part of theadjustable sleep alarm indicator 122. Moving within the fixed annularrange 250 may include the variable graphical element 246 increasing insize (e.g., increasing in length), decreasing in size (e.g., decreasingin length), rotating, and achieving any other suitable movement. Thefixed annular range 250 may represent a bounded range in which thevariable graphical element 246 moves.

The variable graphical element 246 may include an adjustable bedtimeelement 252 associated with a first end of the variable graphicalelement 246 and an adjustable wake time element 254 associated with asecond end of the variable graphical element 246. In this manner, theelements 252, 254 may define the end points of the variable graphicalelement 246.

The adjustable bedtime element 252 may represent a first future time fora bedtime, which may correspond to the suggested bedtime indicator 236.For example, as illustrated in FIG. 5, the adjustable bedtime element252 is aligned with 10:30 on a clock face 256 of the adjustable sleepalarm indicator 122 (e.g., the suggested bedtime indicator 236 alsoidentifies 10:30). Thus, the first future time corresponding to thesuggested bedtime may be computed based at least in part onconfiguration information relating to a sleep duration 258 and a secondfuture time corresponding to a wake time (e.g., as represented by thewake time indicator 238). In some examples, the suggested bedtime may beinput by the user 130 interacting with the suggested bedtime indicator236. The adjustable sleep alarm indicator 122 may also include a currenttime indicator 257. The current time indicator 257 may function toindicate a current time (e.g., 9:30).

As described in detail herein, the adjustable bedtime element 252 may bemoveable within the fixed annular range 250 independent of theadjustable wake time element 254. For example, movement of theadjustable bedtime element 252 within the fixed annular range 250 maycause the variable graphical element 246 to increase in size anddecrease in size, with the adjustable wake time element 254 remaining atthe same location. Such movement of the adjustable bedtime element 252may cause the first future time corresponding to the suggested bedtimeto update based at least in part on the location of the adjustablebedtime element 252 within the fixed annular range 250. Such movement ofthe adjustable bedtime element 252 may also cause the sleep duration 258to update based at least in part on the location of the adjustablebedtime element 252 within the fixed annular range 250.

The adjustable wake time element 254 may represent the second futuretime for presenting a wakeup alert, which may correspond to the waketime indicator 238. For example, as illustrated in FIG. 5, theadjustable wake time element 254 is aligned with 6:30 on the clock face256 of the adjustable sleep alarm indicator 122 (e.g., the wake timeindicator 238 also identifies 6:30). The second future time may becomputed based at least in part on configuration information receivedpreviously. In some examples, the second future time for presenting thewakeup alert may be input by the user 130 by interacting with the waketime indicator 238 and/or the adjustable sleep alarm indicator 122.

As described in detail herein, the adjustable wake time element 254 maybe dependently moveable within the fixed annular range 250. For example,movement of the adjustable wake time element 254 within the fixedannular range 250 a first amount may cause the adjustable bedtimeelement 252 to also move the first amount. In this example, the size(e.g., length) of the variable graphical element 246 may remain thesame, with the adjustable wake time element 254 and the adjustablebedtime element 252 moving dependently. Such movement of the adjustablewake time element 254 may cause the first future time corresponding tothe suggested bedtime to update based at least in part on the locationof the adjustable bedtime element 252 within the fixed annular range250. Such movement of the adjustable wake time element 254 may alsocause the second future time corresponding to the wake time to updatebased at least in part on the location of the adjustable wake timeelement 254 within the fixed annular range 250.

The adjustable sleep alarm indicator 122 may also include a variablealert element 260. The variable alert element 260 may be moveable withinthe fixed annular range 250 to any suitable location within the fixedannular range 250. For example, the user 130 may select the variablealert element 260 and slide it within the fixed annular range 250. Inthis manner the variable alert element 260 may rotate about the centerpoint 248. In some examples, the variable alert element 260 maycorrespond to a scheduled time for a sleep alert or any other suitablealert. In a sleep alert example, the variable alert element 260 may belocated at a time that corresponds to a time earlier than the adjustablebedtime element 252. For example, as illustrated in FIG. 5, the variablealert element 260 is disposed at a location in the fixed annular range250 that corresponds to 10:00 on the clock face 256. This may mean thatthe sleep alert is scheduled to go off at 10:00 (e.g., 30 minutes priorto the suggested bedtime of 10:30). In some examples, the location ofthe variable alert element 260 with respect to the fixed annular range250 may dictate a scheduled time for the alert. Other suitable alertsinclude, for example, alerts scheduled after the suggested bedtime(e.g., an alert scheduled for 2:00 am to feed a newborn baby or let adog out), alerts scheduled after the wake time (e.g., an alert scheduledfor 7:00 am as a backup alarm to the sleep alarm scheduled for 6:30 am).In some examples, more than one variable alert element 260 may beprovided as part of the adjustable sleep alarm indicator 122. In thismanner, more than one alert may be scheduled using the adjustable sleepalarm indicator 122. In some examples, the graphical representation ofthe sleep alarm element(s) 260 with respect to the clock face 256 may bebeneficial for users of the sleep alarm to understand aspects of theirsleep routines. In some examples, instead of variable alert element 260may simply represent a sleep alert and may be a tick mark or otherindicator on the clock face 256. The tick mark may graphically representthe scheduled time for the sleep alert, but may not allow the user 130to adjust the scheduled time. For example, the scheduled time may be setduring the configuration phase of the alarm setting sequence and maypersist for future alarms.

The sleep graph 124 may include one or more linear graphical indicators262(1)-262(n). A few of the linear graphical indicators 262(1), 262(4)are identified in the sleep graph 124 of FIG. 5. Each linear graphicalindicator 262 may correspond to an interval of time such as a 12-hourinterval (e.g., 6 pm on day 1 to 6 am on day 2), a 24-hour interval (6pm on day 1 to 6 pm on day 2), a typical day (e.g., 12 am on day 1 to 12am on day 2), a night interval (e.g., 6 pm on day 1 to 9 am on day 2),and any other suitable interval. The number of intervals (e.g., thenumber of linear graphical indicators 262) displayed in the sleep graph124 may correspond to any suitable period (e.g., a week, a month, etc.).In the sleep graph 124, each of the linear graphical indicators 262 maycorrespond to a day interval of a calendar week period (e.g., Mondaythrough Sunday). As described in detail herein, the sleep graph 124 mayrepresent sleep patterns of the user 130 who uses the sleep alarm. Inthis manner, the sleep graph 124 may be generated based at least in parton historical sleep data. Selection of a more history selector 264, maycause presentation of additional historical sleep data for other periods(e.g., earlier weeks, months, years, etc.).

FIG. 6 illustrates the sleep alarm view 120 and an updated sleep alarmview 266 of the alarm graphical user interface 112 on the user device104, according to at least one example. The updated sleep alarm view 266may be considered an updated version of the sleep alarm view 120. Thismay be because certain aspects of the alarm graphical user interface 112have been adjusted between the state illustrated as the sleep alarm view120 and the state illustrated as the updated sleep alarm view 266.

In some examples, the sleep alarm view 120 may represent a first stateof the alarm graphical user interface 112 prior to receiving a userinput 268 at the user device 104 (e.g., at an input component such as atouch screen). The user input 268 (and other user inputs describedherein) may be depicted as a dark circular element with a dimpledhatching. The updated sleep alarm view 266 may represent a second stateof the alarm graphical user interface 112 after receiving the user input268. The user input 268 is illustrated as a touch gesture that contactsthe adjustable bedtime element 252 and moves the adjustable bedtimeelement 252 to the right (e.g., clockwise) in FIG. 6. The user input 268at the adjustable bedtime element 252 may move the adjustable bedtimeelement 252 in a clockwise direction without also moving the adjustablewake time element 254. In this manner, the adjustable bedtime element252 may move independent of the adjustable wake time element 254. Thus,the adjustable wake time element 254 remains in the same location inboth views 120, 266. At the same time, the adjustable bedtime element252 has changed locations between views 120, 266.

Because one end of the variable graphical element 246 has moved (e.g.,the adjustable bedtime element 252), the length of the variablegraphical element 246 has also changed. In the example illustrated inFIG. 6, the length of the variable graphical element 246 is shorter inthe updated sleep alarm view 266 as compared to the sleep alarm view120. The suggested bedtime indicator 236 is also updated to reflect anupdated future time for the suggested bedtime (e.g., 10:30 pm in thesleep alarm view 120 and 12:00 am in the updated sleep alarm view 266).The wake time indicator 238 remains unchanged between the two views 120,266. This may be because the adjustable wake time element 254 has notmoved. The sleep duration 258 is updated to reflect the change to thelocation of the adjustable bedtime element 252 in the updated sleepalarm view 266. In some examples, the sleep duration 258 may corresponddirectly to the length of the variable graphical element 246. Forexample, if the adjustable bedtime element 252 were moved to the left(e.g., counter-clockwise), the length of the variable graphical element246 would increase (e.g., get longer), the sleep duration 258 wouldincrease, and the suggested bedtime indicator 236 would change.

FIG. 7 illustrates the sleep alarm view 120 and an updated sleep alarmview 270 of the alarm graphical user interface 112 on the user device104, according to at least one example. The updated sleep alarm view 270may be considered an updated version of the sleep alarm view 120. Thismay be because certain aspects of the alarm graphical user interface 112have been adjusted between the state illustrated as the sleep alarm view120 and the state illustrated as the updated sleep alarm view 270.

In some examples, the sleep alarm view 120 may represent a first stateof the alarm graphical user interface 112 prior to receiving a userinput 272 at the user device 104 (e.g., at an input component such as atouch screen). The updated sleep alarm view 270 may represent a secondstate of the alarm graphical user interface 112 after receiving the userinput 272. The user input 272 is illustrated as a touch gesture thatcontacts the adjustable wake time element 254 and moves the adjustablewake time element 254 to the right in FIG. 7 (e.g., counter-clockwise).The user input 272 at the adjustable wake time element 254 may cause thevariable graphical element 246, including both the adjustable bedtimeelement 252 and the adjustable wake time element 254, to rotate in acounter-clockwise direction within the fixed annular range 250. Inparticular, the single user input 272 may cause the adjustable wake timeelement 254 and the adjustable bedtime element 252 to both move withinthe fixed annular range 250. Thus, as shown in FIG. 7, both theadjustable wake time element 254 and the adjustable bedtime element 252have changed locations between the views 120, 270.

Because both ends of the variable graphical element 246 have moved(e.g., the adjustable bedtime element 252 and the adjustable wake timeelement 254) similar distances, the length of the variable graphicalelement 246 has remained unchanged. For the same reasons, the suggestedbedtime indicator 236 is updated to reflect an updated first future timefor the suggested bedtime (e.g., 10:30 pm in the sleep alarm view 120and 9:00 pm in the updated sleep alarm view 270) and the wake timeindicator 238 is updated to reflect a second updated future time for thewakeup alert (e.g., 6:30 am in the sleep alarm view 120 and 5:00 am inthe updated sleep alarm view 270). The sleep duration 258 remainsunchanged between the two views 120, 270. This is at least because thelength of the variable graphical element 246 has remained constant whilethe ends have moved.

The sleep graph 124 may also be updated based at least in part on one ormore of the updated locations (and times) of the adjustable bedtimeelement 252 and the adjustable wake time element 254 in the updatedsleep alarm view 270. For example, the sleep graph 124 may include anearliest bedtime 274 and a latest wake time 276. The earliest bedtime274 may correspond to an earliest time recorded during the periodpresented in the sleep graph 124 (e.g., a week) as an actual bedtime ora suggested bedtime. The latest wake time 276 may correspond a latesttime recording during the period in the sleep graph 124 (e.g., a week)as an actual wake time or a time associated with a sleep alert. Thus, inthe sleep alarm view 120 the earliest bedtime 274 was 10:30 pm and thelatest wake time 276 was 6:30 am. In the updated sleep alarm view 270,the suggested bedtime (e.g., as shown in the suggested bedtime indicator236) has changed to 9:00 pm. Because 9:00 pm is earlier than 10:30 pm,the earliest bedtime 274 has been updated in the updated sleep alarmview 270 to reflect 9:00 pm. The latest wake time 276, however, has notbeen changed between the views 120, 270. This may be because the waketime of 6:30 am (e.g., as shown in the wake time indicator 238 as a timefor a wakeup alert) in the sleep alarm view 120 is later than the waketime of 5:00 am (e.g., as shown in the wake time indicator 238 as a timefor a wakeup alert) in the updated sleep alarm view 270.

FIG. 8 illustrates the sleep alarm view 120 and an updated sleep alarmview 278 of the alarm graphical user interface 112 on the user device104, according to at least one example. The updated sleep alarm view 278may be considered an updated version of the sleep alarm view 120. Thismay be because certain aspects of the alarm graphical user interface 112have been adjusted between the state illustrated as the sleep alarm view120 and the state illustrated as the updated sleep alarm view 278.

In some examples, the sleep alarm view 120 may represent a first stateof the alarm graphical user interface 112 prior to receiving user inputs280, 282 at the user device 104 (e.g., at an input component such as atouch screen). The updated sleep alarm view 278 may represent a secondstate of the alarm graphical user interface 112 after receiving the userinputs 280, 282. The user input 280 is illustrated as a touch gesturethat contacts the adjustable wake time element 254 and moves theadjustable wake time element 254 to the left in FIG. 8 (e.g., clockwise)from 6:30 am to 8:00 am. The user input 280 at the adjustable wake timeelement 254 may cause the variable graphical element 246, including boththe adjustable bedtime element 252 and the adjustable wake time element254, to rotate in a clockwise direction within the fixed annular range250. The user input 282 is illustrated as a touch gesture that contactsthe adjustable bedtime element 252 and moves bedtime element 252 to theleft in FIG. 8 (e.g., counter-clockwise). The user input 282 at theadjustable bedtime element 252 may cause the adjustable bedtime element252 to move in a counter-clockwise direction the fixed annular range 250independent of the adjustable wake time element 254.

In the updated sleep alarm view 278, because both ends of the variablegraphical element 246 have moved (e.g., the adjustable bedtime element252 and the adjustable wake time element 254), the length of thevariable graphical element 246 has increased. For the same reasons, thesuggested bedtime indicator 236 is updated to reflect an updated firstfuture time for the suggested bedtime (e.g., 10:30 pm in the sleep alarmview 120 and 9:00 pm in the updated sleep alarm view 270) and the waketime indicator 238 is updated to reflect a second updated future timefor the wakeup alert (e.g., 6:30 am in the sleep alarm view 120 and 8:00am in the updated sleep alarm view 278). The sleep duration 258 is alsoupdated in the updated sleep alarm view 278 (e.g., 8 hours in the sleepalarm view 120 and 11 hours in the updated sleep alarm view 278). Thisis at least because the length of the variable graphical element 246 hasincreased within the fixed annular range 250.

The sleep graph 124 may also be updated based at least in part on one ormore of the updated locations (and times) of the adjustable bedtimeelement 252 and the adjustable wake time element 254 in the updatedsleep alarm view 278. In the sleep alarm view 120, the earliest bedtime274 was 10:30 pm and the latest wake time 276 was 6:30 am. In theupdated sleep alarm view 278, the suggested bedtime (e.g., as shown inthe suggested bedtime indicator 236) has changed to 9:00 pm. Because9:00 pm is earlier than 10:30 pm, the earliest bedtime 274 has beenupdated in the updated sleep alarm view 278 to reflect 9:00 pm. In theupdated sleep alarm view 278, the future time for the wakeup alert(e.g., as shown in the wake time indicator 238) has changed to 8:00 am.Because 8:00 am is later than 6:30 am, the earliest bedtime 274 has beenupdated in the updated sleep alarm view 278 to reflect 8:00 am. Asdescribed in detail herein, other aspects of the sleep graph 124 (e.g.,the scale, the range, etc.) may be updated based at least in part on theearliest bedtime 274 and the latest wake time 276.

FIG. 9 illustrates the sleep graph 124 of the updated sleep alarm view278 of the alarm graphical user interface 112 on the user device 104,according to at least one example. As introduced herein, the sleep graph124 may include the linear graphical indicators 262(1)-262(n).

A few of the linear graphical indicators 262(1)-262(7) are identified inthe sleep graph 124. Each linear graphical indicator 262 may correspondto an interval of time such as a 12-hour interval (e.g., 6 pm on day 1to 6 am on day 2), a 24-hour interval (6 pm on day 1 to 6 pm on day 2),a typical day (e.g., 12 am on day 1 to 12 am on day 2), a night interval(e.g., 6 pm on day 1 to 9 am on day 2), and any other suitable interval.The number of intervals (e.g., the number of linear graphical indicators262) displayed in the sleep graph 124 may correspond to any suitableperiod (e.g., a week, a month, etc.). In the sleep graph 124, each ofthe linear graphical indicators 262 may correspond to a day interval ofa calendar week period (e.g., Monday through Sunday).

The linear graphical indicators 262 may be graphed on the sleep graph124 with respect to a sleep range 284. The sleep range 284 maycorrespond to the earliest bedtime 274 and the latest wake time 276 forthe period (e.g., a week). The sleep range 284 may be varied dependingon how the adjustable sleep alarm indicator 122 (and the sleep alarm) isconfigured. This includes updating the sleep range 284 based at least inpart on a suggested bedtime to take place in the future and a wake timeto take place in the future. In this manner, the user 130 may be able tosee how adjusting her sleep for a single night relates to other earliernights of sleep during the week. For example, as discussed withreference to FIG. 8, the suggested bedtime and the wake time wereadjusted between the sleep alarm view 120 and the updated sleep alarmview 278, which resulted in the sleep range 284 illustrated in FIG. 9.In some examples, the linear graphical indicator 262(7) may be anexpected linear graphical indicator. This may be because the sleep graph124 illustrated in FIG. 9 corresponds to a time Sunday after 7:00 am(the time the user 130 awoke on Sunday morning as indicated by thelinear graphical indicator 262(6)) and before 9:00 pm (the timecurrently scheduled as a suggested bedtime on Sunday night for the user130 as indicated by the linear graphical indicator 262(7)). Thus, thelinear graphical indicator 262(7) corresponds to expected sleep duringSunday night. As discussed with reference to FIG. 8, the sleep duration258 for the updated sleep alarm view 278 was 11 hours. Thus, the lineargraphical indicator 262(7) extends from 9:00 pm to 8:00 am.

Generally, each of the linear graphical indicators 262 may represent anamount of sleep recorded and/or estimated during an interval, abeginning of the sleep interval, and an end of the sleep interval. Theamount of sleep may correspond to the length of the linear graphicalindicator 262. The beginning of the sleep interval may correspond to afirst end of the linear graphical indicator 262 and the end of the sleepinterval may correspond a second end of the linear graphical indicator262. When the linear graphical indicator 262 includes more than two ends(e.g., the linear graphical indicator 262(3)), the beginning of thesleep interval may correspond to the earliest end and the end of thesleep interval may correspond to the latest end of the linear graphicalindicator 262. Thus, the linear graphical indicators 262 may represent atotal amount of sleep the user 130 received each night and an aggregatetotal for the week. Because adequate sleep may impact one's health, thepresentation of the linear graphical indicators 262 in a manner thatrepresents amount of sleep may enable the user 130 to determine whetherto make changes in her sleep routine to increase or decrease the amountof time slept.

The linear graphical indicators 262 may also represent instances ofsleep interruptions.

For example, the linear graphical indicator 262(3) may include graphicalsegments 286(1), 286(2) separated by a broken region 288. The graphicalsegment 286(1) may represent that the user 130 slept for a first periodof time (e.g., around 1.5 hours). The broken region 288 may representthat after the first period of time corresponding to the graphicalsegment 286(1), the user 130 was awake for a second period of time(e.g., around half an hour). The graphical segment 286(2) may representthat after the second period of time corresponding to the broken region288, the user 130 slept for a third period of time (e.g., around 4.5hours). Thus, the linear graphical indicator 266(3) can be used toeasily see that for Wednesday night the user 130 slept around 6 hourstotal, with a short interruption of about 30 minutes. In some example,more or fewer graphical segments 286 and broken regions 288 may beincluded in any one of the linear graphical indicator 262, depending onsleep data. Thus, the linear graphical indicators 262 may representinstances of sleep interruptions during each night and display allinstances of interruptions during a certain period (e.g., a week).Because uninterrupted sleep may impact one's health, the presentation ofthe linear graphical indicators 262 in a manner that representsinstances of sleep interruptions may enable the user 130 to determinewhether to make changes in her sleep routine to eliminate or minimizethe number, frequency, and length of interruptions.

Each of the linear graphical indicators 262 or a set of linear graphicalindicators 262 together, when graphed with respect to the sleep range284, may represent how consistent the user 130 is in her sleep routinein terms of alignment of the linear graphical indicators 262. Forexample, if the linear graphical indicators 262 include the samebeginning time and end time (e.g., are aligned), it may be said that theuser's 130 sleep routine has characteristics of consistency. Thus,consistency may refer to instances of retiring and rising at similartimes each day. Because consistency in one's sleep routine may impactone's health, the presentation of the linear graphical indicators 262 ina manner that represents consistency may enable the user 130 todetermine whether to make changes in her sleep routine to improveconsistency.

The retiring times and rising times may correspond to the beginnings ofthe sleep intervals and the ends of the sleep intervals, as describedherein. Thus, for a particular interval, the times for retiring andrising may correspond to a suggested bedtime (e.g., a computed valueindicating a time to go to sleep) and a wake time (e.g., a computedand/or scheduled value indicating a time when a wakeup alert of thesleep alarm will go off) for that interval. Thus, the determination ofthe beginning of the sleep interval and the end of the sleep intervalmay be based at least in part on system data, interaction data, and/orconfiguration information relating times computed and/or scheduled forthe suggested bedtimes and the wake times.

In some examples, as discussed with reference to FIG. 10, determinationof the beginning of the sleep interval and the end of the sleep intervalmay be based at least in part on user interaction data collected fromthe user device 104, other electronic devices associated with the user130 of the user device 104, and/or other devices capable of transmittinginformation over a network.

FIG. 10 illustrates an example environment 1000 in which techniquesrelating to interacting with a sleep alarm as described herein may beimplemented, according to at least one example. In particular, theenvironment 1000 may be useful for collecting historical sleep data inorder to populate the sleep graph 124. This may include determiningand/or estimating when a user falls asleep (e.g., a beginning of a sleepinterval), determining and/or estimating when the user is awake duringthe night (e.g., instances of sleep interruptions during the sleepinterval), and/or determining and/or estimating when the user wakes inthe morning (e.g., an end of the sleep interval). This sleep data maycollected in any suitable manner, shared with any suitable user device(e.g., the user device 104), and/or shared with a service providercomputer (e.g. a service provider 1102) to populate the sleep graph 124.

The environment 1000 may be any suitable location where users1002(1)-1002(n) are located and sleep. The users 1002 are examples ofthe user 130. The environment 1000 may be a room in a home, a studioapartment, a hotel room, a cabin on a train or airplane, a classroom,and any other suitable location. The environment 1000 may include aplurality of network-enabled devices such as user devices 104(1),104(2), a tablet device 1004, a desktop computer or a laptop computer1006, a smart outlet 1008, a home entertainment device and/or smart TV1010, a wearable device 1012, an automated blind controller 1014, andany other suitable device (e.g., an alarm system that includes lightsensors, door sensors, window sensors, etc.). The devices of theenvironment 1000 may provide data to the user device 104 and/or theservice provider that can be used to determine or estimate when theusers 1002 fall asleep, instances when the users 1002 are awake duringthe night, and when the users 1002 wake up in the morning. Such data caninclude interaction data indicating that one of the users 1002 isinteracting with a device, lock data indicating that a device has beenput in a locked state or hibernation state, power status data, and anyother suitable data.

For example, if the user 1002(1) were playing a game on the tabletdevice 1004, interaction data from the tablet device 1004 may identifythe user 1002(1) (e.g., by using login information or other user profileinformation associated with the user 1002(1)), the tablet device 1004, atime when the interactions were logged, the type of interaction (e.g.,playing the game using an application, viewing device, interacting withemail, checking a social media site, viewing video content, etc.), andany other suitable data.

As an additional example, if the user 1002(2) awakes during the night,he may check the time on his user device 104(2). This event may belogged by interaction data that identifies the user 1002(2), the userdevice 104(2), the duration of the event (e.g., how long was the userdevice 104(2) unlocked, how long was the screen lit up, or how long wasthe clock application open), the type of interaction, and any othersuitable data.

As an additional example, if the home entertainment device 1010 is onand receiving content, it may be inferred that at least one of the users1002 is awake. If it is determined that only the user device 104(2) islocated in the environment 1000 at the time when the home entertainmentdevice 1010 is on, it may be inferred that at least the user 1002(2) isawake.

As an additional example, the wearable device 1012, which may includeone or more sensors, may be capable of collecting movement data thatidentifies when the user 1002(1) is moving and/or health data thatidentifies aspects of her heart rate, respiratory rate, etc. This datamay be used to determine that the user 1002(1) is asleep and/or awake.

As an additional example, the smart outlet 1008 may provide dataindicating that the smart outlet 1008 is providing power to a connecteddevice (e.g., a lamp, light fixture, etc.). This data may be used todetermine that the users 1002 are asleep and/or awake. Similarly, theautomated blind controller 1014 may provide data indicating that a setof blinds are open. This data may be used to determine that the users1002 are asleep and/or awake.

In some examples, the environment 1000 may include other devices, whichmay or may not be network-enabled. For example, a sleep monitoringdevice may collect detailed sleep data about the user 1002(1). This datamay be shared with the user device 104 and/or the service provider inany suitable fashion in order to implement techniques described herein.In some examples, certain third-party applications running on the userdevices 104 and/or the tablet device 1004 may be used to collect sleepdata that may be used to implement techniques described herein. Forexample, a particular sleep application may instruct the user 1002(1) toplace the user device 104(1) on the bed next to her. The sleepapplication may use sensors of the user device 104(1) to collect dataabout movements of the user 1002(1) during the night. This movement datamay then be used to determine when the user 1002(1) is asleep (includinginstances of Rapid Eye Movement (REM) sleep and non-REM sleep), is awakeduring the night, and is awake in the morning.

In some examples, the environment 1000 may also be useful for presentingone or more alerts as described herein (e.g., sleep alerts, wakeupalerts, and any other suitable alert). For example, the alerts may bepresented as audio alerts at one or more of the devices that includespeakers or other audio output devices (e.g., the user devices 104, thetablet device 1004, the desktop computer 1006, the home entertainmentdevice 1010, and/or the wearable device 1012).

The alerts may be also presented as visual alerts at one or more of thedevices. For example, displays or light elements of one or more of theuser devices 104, the tablet device 1004, the desktop computer 1006, thehome entertainment device 1010, and/or the wearable device 1012 may beturned on, flashed, brightness changed, or any other change to providevisual alerts. Visual alerts may also be presented by the smart outlet1008 turning on a connected light, causing a brightness of the connectedlight to increase, flashing the connected light, or any other change toprovide visual alerts. Visual alerts may also be presented by theautomated blind controller 1014 opening a set of associated blinds andallowing natural light into the room. Any of the visual alerts may bepresented in a manner that simulates a sunrise or otherwise slowlyincreases in brightness.

The alerts may also be presented as vibratory alerts at one or more ofthe devices. For example, vibration motors of the user devices 104, thetablet device 1004, and/or the wearable device 1012 may be turned on toprovide the vibratory alerts.

In some examples, any suitable combination of audio, visual, and/orvibratory alerts may be presented at the same time as part of the samesleep alert, wakeup alert, or other comparable alert. For example, ifthe user 1002(1) is working at the desktop computer 1006 at a scheduledtime for a sleep alert, it may be determined to send the sleep alert tothe desktop computer 1006 as an audio alert and/or a visual alert (e.g.,a popup on the screen of the desktop computer). The same sleep alert mayalso be sent to the wearable device 1012 if it is determined that theuser 1002(1) is wearing the wearable device 1012. As an additionalexample, a wakeup alert may be presented as an audio alert at the userdevice 104(1), a visual alert by the automated blind controller 1014opening the blinds, and as a vibratory alert at the wearable device1012.

In some examples, interaction data may be collected that describes theinteractions of the users 1002 with the devices (and other devices) inthe environment 1000. This interaction data may be used in addition toor instead of certain configuration information typically received byuser input. For example, instead of using the sleep duration selector228 to select an offset time prior to a suggested bedtime forpresentation of a sleep alert, the interaction data may be used todetermine an estimated offset time. For example, historical interactiondata may be used to model the behaviors of the user 1002(1) in the hoursand minutes prior to the user 1002(1) falling asleep or at least gettingin bed. Use of the historical interaction data may enable detection ofone or more patterns of interaction with devices that may correspond toa sleep routine. For example, it may be determined that the user 1002(1)is typically in bed within 20 minutes after powering off anentertainment device in a family room. And that during this 20 minutes,the user 1002(1) turns on and off lights in the bathroom, opens andcloses a door to a child's bedroom, turns down the thermostat, andinteracts with her user device 104(1) before retiring. Based at least inpart on this interaction data, it may be determined that the sleep alertshould be sent to the user at least 20 minutes prior to the suggestedbedtime. This may ensure that the user 1002(1) has sufficient time toconduct her bedtime routine prior to getting in bed. The determined timefor the sleep alert may be customized to each of the users 1002(1),1002(2). For example, the user 1002(2) may take much longer to gothrough his bedtime routine (as determined based at least in part oninteraction data). Thus, a sleep alert may be sent to the user 1002(2)30 minutes or more before his suggested bedtime.

FIG. 11 illustrates an example architecture or environment 1100configured to implement techniques relating to interacting with sleepalarms, according to at least one example. In some examples, the examplearchitecture 1100 may further be configured enable the user device 104,service provider computers 1102, and a wearable device 1108 to shareinformation. In some examples, the devices may be connected via one ormore networks 1104 and/or 1106 (e.g., via Bluetooth, WiFi, the Internet,or the like). In the architecture 1100, one or more users (e.g., theuser 130) may utilize the user device 104 to manage, control, orotherwise utilize the wearable device 1108, via the one or more networks1106. Additionally, in some examples, the wearable device 1108, theservice provider computers 1102, and user device 104 may be configuredor otherwise built as a single device. For example, the wearable device1108 and/or the user device 104 may be configured to implement theembodiments described herein as a single computing unit, exercising theexamples described above and below without the need for the otherdevices described.

In some examples, the networks 1104, 1106 may include any one or acombination of many different types of networks, such as cable networks,the Internet, wireless networks, cellular networks, satellite networks,other private and/or public networks, or any combination thereof. Whilethe illustrated example represents the user device 104 accessing theservice provider computers 1102 via the networks 1104, the describedtechniques may equally apply in instances where the user device 104interacts with the service provider computers 1102 over a landlinephone, via a kiosk, or in any other manner. It is also noted that thedescribed techniques may apply in other client/server arrangements(e.g., set-top boxes, etc.), as well as in non-client/serverarrangements (e.g., locally stored applications, peer to peerconfigurations, etc.).

As noted above, the user device 104 may be configured to collect and/ormanage user activity data potentially received from the wearable device1108. In some examples, the wearable device 1108 may be configured toprovide health, fitness, activity, and/or medical data of the user to athird- or first-party application (e.g., the service provider 1102). Inturn, this data may be used by the user device 104 to schedule andpresent alerts as described herein. The user device 104 may be any typeof computing device such as, but not limited to, a mobile phone, asmartphone, a personal digital assistant (PDA), a laptop computer, adesktop computer, a thin-client device, a tablet computer, a wearabledevice, or the like. In some examples, the user device 104 may be incommunication with the service provider computers 1102 and/or thewearable device 1108 via the networks 1104, 1106, or via other networkconnections.

In one illustrative configuration, the user device 104 may include atleast one memory 1114 and one or more processing units (or processor(s))1116. The processor(s) 1116 may be implemented as appropriate inhardware, computer-executable instructions, firmware, or combinationsthereof. Computer-executable instruction or firmware implementations ofthe processor(s) 1116 may include computer-executable ormachine-executable instructions written in any suitable programminglanguage to perform the various functions described. The user device 104may also include geo-location devices (e.g., a global positioning system(GPS) device or the like) for providing and/or recording geographiclocation information associated with the user device 104.

The memory 1114 may store program instructions that are loadable andexecutable on the processor(s) 1116, as well as data generated duringthe execution of these programs.

Depending on the configuration and type of the user device 104, thememory 1114 may be volatile (such as random access memory (RAM)) and/ornon-volatile (such as read-only memory (ROM), flash memory, etc.). Theuser device 104 may also include additional removable storage and/ornon-removable storage 1126 including, but not limited to, magneticstorage, optical disks, and/or tape storage. The disk drives and theirassociated non-transitory computer-readable media may providenon-volatile storage of computer-readable instructions, data structures,program modules, and other data for the computing devices. In someimplementations, the memory 1114 may include multiple different types ofmemory, such as static random access memory (SRAM), dynamic randomaccess memory (DRAM), or ROM. While the volatile memory described hereinmay be referred to as RAM, any volatile memory that would not maintaindata stored therein once unplugged from a host and/or power would beappropriate.

The memory 1114 and the additional storage 1126, both removable andnon-removable, are all examples of non-transitory computer-readablestorage media. For example, non-transitory computer readable storagemedia may include volatile or non-volatile, removable or non-removablemedia implemented in any method or technology for storage of informationsuch as computer-readable instructions, data structures, programmodules, or other data. The memory 1114 and the additional storage 1126are both examples of non-transitory computer storage media. Additionaltypes of computer storage media that may be present in the user device104 may include, but are not limited to, phase-change RAM (PRAM), SRAM,DRAM, RAM, ROM, electrically erasable programmable read-only memory(EEPROM), flash memory or other memory technology, compact discread-only memory (CD-ROM), digital video disc (DVD) or other opticalstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or any other medium that can be used tostore the desired information and that can be accessed by the userdevice 104. Combinations of any of the above should also be includedwithin the scope of non-transitory computer-readable storage media.Alternatively, computer-readable communication media may includecomputer-readable instructions, program modules, or other datatransmitted within a data signal, such as a carrier wave, or othertransmission. However, as used herein, computer-readable storage mediadoes not include computer-readable communication media.

The user device 104 may also contain communications connection(s) 1128that allow the user device 104 to communicate with a data store, anothercomputing device or server, user terminals, and/or other devices via thenetworks 1104, 1106. The user device 104 may also include I/O device(s)1130, such as a keyboard, a mouse, a pen, a voice input device, a touchinput device, a display, speakers, a printer, etc.

Turning to the contents of the memory 1114 in more detail, the memory1114 may include an operating system 1132 and/or one or more applicationprograms or services for implementing the features disclosed hereinincluding an alarm module 1110(a). In some examples, the alarm module1110(a) may be configured to provide the alarm graphical user interface112, schedule alerts, present alerts, and implement the other featuresdescribed herein.

As described in detail with reference to later figures, the wearabledevice 1108 may include a memory that includes a similar alarm module1110, which may be accessible by one or more processors of the wearabledevice 1108. The service provider 1102 may also include a memory thatincludes an alarm module 1110(b). In this manner, the techniquesdescribed herein may be implemented by any one, or a combination of morethan one, of the computing devices (e.g., the wearable device 1108, theuser device 104, or the service provider 1102).

The service provider computers 1102 may also be any type of computingdevice such as, but not limited to, a mobile phone, a smartphone, a PDA,a laptop computer, a desktop computer, a thin-client device, a tabletcomputer, a wearable device, etc. In some examples, the service providercomputers 1102 may be in communication with the user device 104 and/orwearable device 1108 via the networks 1104, 1106, or via other networkconnections.

In one illustrative configuration, the service provider computers 1102may include at least one memory 1142 and one or more processing units(or processor(s)) 1144. The processor(s) 1144 may be implemented asappropriate in hardware, computer-executable instructions, firmware, orcombinations thereof. Computer-executable instruction or firmwareimplementations of the processor(s) 1144 may include computer-executableor machine-executable instructions written in any suitable programminglanguage to perform the various functions described.

The memory 1142 may store program instructions that are loadable andexecutable on the processor(s) 1144, as well as data generated duringthe execution of these programs. Depending on the configuration and typeof service provider computer 1102, the memory 1142 may be volatile (suchas RAM) and/or non-volatile (such as ROM, flash memory, etc.). Theservice provider computer 1102 may also include additional removablestorage and/or non-removable storage 1146 including, but not limited to,magnetic storage, optical disks, and/or tape storage. The disk drivesand their associated non-transitory computer-readable media may providenon-volatile storage of computer-readable instructions, data structures,program modules, and other data for the computing devices. In someimplementations, the memory 1142 may include multiple different types ofmemory, such as SRAM, DRAM, or ROM. While the volatile memory describedherein may be referred to as RAM, any volatile memory that would notmaintain data stored therein once unplugged from a host and/or powerwould be appropriate. The memory 1142 and the additional storage 1146,both removable and non-removable, are both additional examples ofnon-transitory computer-readable storage media.

The service provider computer 1102 may also contain communicationsconnection(s) 1148 that allow the service provider computer 1102 tocommunicate with a data store, another computing device or server, userterminals and/or other devices via the networks 1104, 1106. The serviceprovider computer 1102 may also include I/O device(s) 1150, such as akeyboard, a mouse, a pen, a voice input device, a touch input device, adisplay, speakers, a printer, etc.

Turning to the contents of the memory 1142 in more detail, the memory1142 may include an operating system 1152 and/or one or more applicationprograms or services for implementing the features disclosed hereinincluding the alarm module 1110(b).

FIGS. 12, 13, and 14 illustrate example flow diagrams showing processes1200, 1300, and 1400 for interacting with sleep alarms, according to atleast a few examples. These processes, and any other processes describedherein, are illustrated as logical flow diagrams, each operation ofwhich represents a sequence of operations that can be implemented inhardware, computer instructions, or a combination thereof. In thecontext of computer instructions, the operations may representcomputer-executable instructions stored on one or more non-transitorycomputer-readable storage media that, when executed by one or moreprocessors, perform the recited operations. Generally,computer-executable instructions include routines, programs, objects,components, data structures and the like that perform particularfunctions or implement particular data types. The order in which theoperations are described is not intended to be construed as alimitation, and any number of the described operations can be combinedin any order and/or in parallel to implement the processes.

Additionally, some, any, or all of the processes described herein may beperformed under the control of one or more computer systems configuredwith specific executable instructions and may be implemented as code(e.g., executable instructions, one or more computer programs, or one ormore applications) executing collectively on one or more processors, byhardware, or combinations thereof. As noted above, the code may bestored on a non-transitory computer-readable storage medium, forexample, in the form of a computer program including a plurality ofinstructions executable by one or more processors.

FIG. 12 depicts the process 1200 including example acts or techniquesrelating to interacting with sleep alarms, according to at least oneexample. The alarm module 1110, whether embodied in the service provider1102, the wearable device 1108, the user device 104, or any suitablecombination of the foregoing may perform the process 1200 of FIG. 12.The process 1200 begins at 1202 by presenting a user interface. The userinterface may be presented on a display of a user device. The userinterface may be a graphical user interface (e.g., an alarm graphicaluser interface) and may include one or more interface components forreceiving and providing information. For example, the user interface mayinclude components that correspond to a sleep alarm option 1204 and ageneric alarm option 1206. Selection of either of the options 1204, 1206may cause a view of the user interface to be presented. The sleep alarmoption 1204 and the generic alarm option 1206 may be presented inconnection with other options for accessing other views of the userinterface.

At 1208, the process 1200 presents a sleep alarm view of the userinterface. The sleep alarm view may be presented in response toselection of the sleep alarm option 1204. Selection of the sleep alarmoption 1204 may include a user input the identifies the interfacecomponent or selector that corresponds to the sleep alarm option 1204.

At 1210, the process 1200 receives configuration information. Theconfiguration information may be information that configures a sleepalarm. The configuration information may be received as part of aconfiguration phase of an alarm setting sequence or during a schedulingphase of an alarm setting sequence. In some examples, the configurationinformation is stored in connection with user settings. Theconfiguration information may also be received in response to one ormore user inputs received at the user interface. The user inputs mayselect, identify, or otherwise input information that configures aspectsof the sleep alarm. Examples of configuration information may include awake time 1212, a sleep duration 1214, and a sleep alert offset time1216. The wake time 1212 may be a time at which a wakeup alert of thesleep alarm may be presented. The sleep duration 1214 may be a durationof time. The sleep alert offset time 1216 may identify an amount of timeprior to the suggested bedtime for a sleep alert. In some examples,other configuration information may be received. For example, otherconfiguration information may identify the days for the sleep alarm togo off, an expected bedtime, aspects of the alerts (e.g., music orsounds, colors, etc.), snooze information, volume adjustment, and/or anyother suitable aspect of the sleep alarm. The volume adjustment mayfunction to control the audible volume of alerts presented at a userdevice independent of a system volume on the user device. In thismanner, the volume of alerts of the sleep alarm may be set to a firstlevel and the volume of other alerts, music, and other sounds on theuser device may be set to a second, different level.

At 1218, the process 1200 determines future times. Determining thefuture times may include using at least a portion of the configurationinformation to compute the future times. The future times may include asuggested bedtime 1220 and a wake time 1222. The wake time 1222 may bethe same value as the wake time 1212. In some examples, the wake time1222 may be determined based at least in part on other configurationinformation. For example, when the configuration information does notinclude the wake time 1212, the wake time 1222 may be determined basedat least in part on the sleep duration 1214 and the suggested bedtime1220 or other bedtime. The suggested bedtime 1220 may be determinedbased at least in part on the wake time 1212 and/or the suggestedbedtime 1220 and the sleep duration 1214. For example, if the wake time1212 was 6:00 am and the sleep duration 1214 was 8 hours, the suggestedbedtime 1220 may be 10:00 pm.

At 1224, the process 1200 schedules a wakeup alert corresponding to thewake time. The wakeup alert may be any suitable alert that is set to gooff at the wake time. In some examples, scheduling the wakeup alert mayinclude storing information about the wake time in memory of the userdevice or in any other suitable manner. In some examples, scheduling thewakeup alert activates a do not disturb setting on the user device. Thedo not disturb setting may remain active at least from a suggestedbedtime to the wake time.

At 1226, the process 1200 schedules a sleep alert corresponding to thesuggested bedtime. The sleep alert may be any suitable alert that is setto go off at the suggested bedtime or at a time prior to the suggestedbedtime corresponding to the sleep alert offset time. For example, thesleep alert may be set to go off prior to the suggested bedtime in orderto give the user adequate time to prepare to go to sleep.

At 1228, the process 1200 presents one or more alerts. This may includepresenting the one or more alerts on the user device, in any othermanner described herein, or in any other suitable manner. The one ormore alerts may include the wakeup alert 1230 and the sleep alert 1232,each of which may be presented at different times.

FIG. 13 depicts the process 1300 including example acts or techniquesrelating to interacting with sleep alarms, according to at least oneexample. The alarm module 1110, whether embodied in the service provider1102, the wearable device 1108, the user device 104, or any suitablecombination of the foregoing may perform the process 1300 of FIG. 13.The process 1300 begins at 1302 by providing a user interface forpresentation at a user device. The user interface may include anadjustable alarm indicator 1304 and a sleep graph 1306. The adjustablealarm indicator 1304 may be an example of the adjustable sleep alarmindicator 122 described herein. The sleep graph 1306 may be an exampleof the sleep graph 124 described herein. In this manner, the adjustablealarm indicator 1304 may be used to schedule a sleep alert of a sleepalarm, set a bedtime, schedule a wakeup alert of the sleep alarm, andperform any other suitable function. The adjustable alarm indicator 1304may also provide a graphical representation of the sleep alarm. Thesleep graph 1306 may graphical represent a set of sleep data for acertain period.

At 1308, the process 1300 receives a communication indicating anadjustment to the adjustable alarm indicator. The communication may begenerated at a user device in response to one or more user inputs at theuser interface that adjust the adjustable alarm indicator. Theadjustable alarm indicator may include a variable element connecting twoends. Adjusting the adjustable alarm indicator may include moving eitherend of the adjustable alarm indicator to change the orientation of thevariable element and/or change the size of the variable element.

At 1310, the process 1300 determines that the adjustment exceeds a sleeprange corresponding to the sleep graph. The adjustment may be theadjustment identified by the communication received at 1308. The sleeprange may be initially bounded by a first time and a second time. Thefirst time may correspond to an actual bedtime or a suggested bedtime.The second time may correspond to an actual wake time or an expectedwake time. The first time may be the earliest actual bedtime or theearliest suggested bedtime over a particular period. The second time maybe the latest actual wake time or the latest expected wake time over theparticular period. The adjustment may exceed the sleep range if eitherone of the elements of the adjustable alarm indicator are moved to alocation with respect to the adjustable alarm indicator that correspondsto a suggested bedtime that is earlier than the first time and/or thatcorresponds to an expected wake time that is later than the second time.

At 1312, the process 1300 generates an updated sleep graph that includesan updated sleep range. The updated sleep range may be enlarged orreduced to include the first time and/or the second time.

At 1314, the process 1300 provides the updated sleep graph forpresentation at the user device. This can include providing an updatedsleep alarm view of the user interface that includes the updated sleepgraph. Once received, the user device may present the updated theupdated sleep graph on a display of the user device.

FIG. 14 depicts the process 1400 including example acts or techniquesrelating to detecting aspects of a sleep cycle, according to at leastone example. The alarm module 1110, whether embodied in the serviceprovider 1102, the wearable device 1108, the user device 104, or anysuitable combination of the foregoing may perform the process 1400 ofFIG. 14. The process 1400 begins at 1402 by receiving first interactiondata. The first interaction data may be generated by one or more userdevices in response to a user interacting with the one or more userdevices. For example, the first interaction data may correspond to theuser interacting with one or more applications of a particular userdevice such as a mobile phone. While the interactions are beingdetected, it may be determined that the user is awake. In some examples,the first interaction data may simply identify that the user device isin an unlocked state. From this, it may be inferred that the user isinteracting with the user device or at least has not locked the userdevice, and may likely be awake.

At 1404, the process 1400 determines a beginning sleep time based atleast in part on the first interaction data. This may includedetermining, based at least in part on the interaction data, a time whenthe user ceased interacting with the user device. For example, theinteraction data may indicate that the user scheduled an alarm at 10:30pm, locked the user device, and set the user device down. If the userdevice remains locked for a certain period of time (e.g., 30 minutes),it may be inferred the user went to bed after setting the user devicedown (e.g., on a nightstand). As an additional example, the interactiondata may indicate that the user was interacting with an application(e.g., a video streaming application) at 11:00 pm, and when the videoended at 11:15 pm, the user device auto locked. From this, it may beinferred that the user went to bed at some point in time between 11:00pm and 11:15 pm. Other user interaction data may be used to determine anexact time or otherwise an average time may be determined (e.g., 11:07pm). The beginning sleep time may be stored in a table or othercomparable data structure. The beginning sleep time may be used togenerate a sleep graph.

At 1406, the process 1400 receives second interaction data. The secondinteraction data may be received after the beginning sleep timedetermined at 1404. Thus, the second interaction data may be collectedduring a time when the user is expected to be asleep. The secondinteraction data can include any suitable data described herein. Forexample, the second interaction data may indicate that a flashlight ofthe user device was turned on at 1:34 am and remained on until 1:45 am.The second interaction data may be collected from a wearable device. Forexample, the second interaction data may indicate movements and/orinteractions of the user during the night while the user wore thewearable device.

At 1408, the process 1400 determines an interrupted period during anexpected sleep period based at least in part on the second interactiondata. The interrupted period may correspond to a period of time duringthe night in which the second interaction data indicates the userinteracted with the user device, or otherwise moved in a mannerindicating a state of being awake. The interrupted period may be storedin a table or other comparable data structure. The interrupted periodmay be used to generate the sleep graph.

At 1410, the process 1400 presents a wakeup alert. The wakeup alert maybe presented in any suitable manner as described herein.

At 1412, the process 1400 receives third interaction data. The thirdinteraction data may be received after the wakeup alert is presented.Thus, the third interaction data may be collected at a time when it isexpected that the user will be awake. The third interaction data mayinclude any suitable data as described herein.

At 1414, the process 1400 determines an end sleep time based at least inpart on the wakeup alert and the third interaction data. In someexamples, the end sleep time may correspond directly to the time atwhich the wakeup alert was presented. However, in other examples, theend sleep time may take place at a time that is later than the time atwhich the wakeup alert was presented earlier. This may be because thewakeup alert did not wake up the user or the user snoozed or otherwiseturned off the wakeup alert without actually ending her sleep (e.g.,getting out of bed) or awake before the wakeup alert. Thus, thetechniques described herein may use interaction data collected after thewakeup alert has been presented to identify a more precise end sleeptime or wake time.

Embodiments described herein may take the form of, be incorporated in,or operate with a suitable electronic device. One example of such adevice is shown in FIG. 15 and takes the form of a wearable mechanism.As shown, the mechanism may be worn on a user's wrist and securedthereto by a band. The mechanism may have a variety of functionsincluding, but not limited to: keeping time; monitoring a user'sphysiological signals and providing health-related information based atleast in part on those signals; communicating (in a wired or wirelessfashion) with other electronic devices, which may be different types ofdevices having different functionalities; providing alerts to a user,which may include audio, haptic, visual and/or other sensory output, anyor all of which may be synchronized with one another; visually depictingdata on a display; gather data form one or more sensors that may be usedto initiate, control, or modify operations of the device; determine alocation of a touch on a surface of the device and/or an amount of forceexerted on the device, and use either or both as input; accepting voiceinput to control one or more functions; accepting tactile input tocontrol one or more functions; and so on.

Alternative embodiments of suitable electronic devices include a phone;a tablet computing device; a portable media player; and so on. Stillother suitable electronic devices may include laptop/notebook computers,personal digital assistants, touch screens, input-sensitive pads orsurfaces, and so on.

In some embodiments the electronic device may accept a variety of bands,straps, or other retention mechanisms (collectively, “bands”). Thesebands may be removably connected to the electronic device by a lug thatis accepted in a recess or other aperture within the device and locksthereto. The lug may be part of the band or may be separable (and/orseparate) from the band. Generally, the lug may lock into the electronicdevice's recess and thereby maintain connection between the band anddevice. The user may release a locking mechanism to permit the lug toslide or otherwise move out of the recess. In some embodiments, therecess may be formed in the band and the lug may be affixed orincorporated into the device.

A user may change combinations of bands and electronic devices, therebypermitting mixing and matching of the two categories. It should beappreciated that devices having other forms and/or functions may includesimilar recesses and may releasably mate with a lug and/or bandincorporating a lug. In this fashion, an ecosystem of bands and devicesmay be envisioned, each of which is compatible with another. A singleband may be used to connect to devices, as one further example; in suchembodiments the band may include electrical interconnections that permitthe two devices to transmit signals to one another and thereby interactwith one another.

In many embodiments, the electronic device may keep and display time,essentially functioning as a wristwatch among other things. Time may bedisplayed in an analog or digital format, depending on the device, itssettings, and (in some cases) a user's preferences. Typically, time isdisplayed on a digital display stack forming part of the exterior of thedevice.

The display stack may include a cover element, such as a cover glass,overlying a display. The cover glass need not necessarily be formed fromglass, although that is an option; it may be formed from sapphire,zirconia, alumina, chemically strengthened glass, hardened plastic andso on. Likewise, the display may be a liquid crystal display, an organiclight-emitting diode display, or any other suitable display technology.Among other elements, the display stack may include a backlight in someembodiments.

The device may also include one or more touch sensors to determine alocation of a touch on the cover glass. A touch sensor may beincorporated into or on the display stack in order to determine alocation of a touch. The touch sensor may be self-capacitive in certainembodiments, mutual-capacitive in others, or a combination thereof.

Similarly, the device may include a force sensor to determine an amountof force applied to the cover glass. The force sensor may be acapacitive sensor in some embodiments and a strain sensor in otherembodiments. In either embodiment, the force sensor is generallytransparent and made from transparent materials, or is located beneathor away from the display in order not to interfere with the view of thedisplay. The force sensor may, for example, take the form of twocapacitive plates separated by silicone or another deformable material.As the capacitive plates move closer together under an external force,the change in capacitance may be measured and a value of the externalforce correlated from the capacitance change. Further, by comparingrelative capacitance changes from multiple points on the force sensor,or from multiple force sensors, a location or locations at which forceis exerted may be determined. In one embodiment the force sensor maytake the form of a gasket extending beneath the periphery of thedisplay. The gasket may be segmented or unitary, depending on theembodiment.

The electronic device may also provide alerts to a user. An alert may begenerated in response to: a change in status of the device (one exampleof which is power running low); receipt of information by the device(such as receiving a message); communications between the device andanother mechanism/device (such as a second type of device informing thedevice that a message is waiting or communication is in progress); anoperational state of an application (such as, as part of a game, or whena calendar appointment is imminent) or the operating system (such aswhen the device powers on or shuts down); and so on. The number andtypes of triggers for an alert are various and far-ranging.

The alert may be auditory, visual, haptic, or a combination thereof. Ahaptic actuator may be housed within the device and may move linearly togenerate haptic output (although in alternative embodiments the hapticactuator may be rotary or any other type). A speaker may provideauditory components of an alert and the aforementioned display mayprovide visual alert components. In some embodiments a dedicated light,display, or other visual output component may be used as part of analert.

The auditory, haptic, and/or visual components of the alert may besynchronized to provide an overall experience to a user. One or morecomponents may be delayed relative to other components to create adesired synchronization among them. The components may be synchronizedso that they are perceived substantially simultaneously; as one example,a haptic output may be initiated slightly before an auditory outputsince the haptic output may take longer to be perceived than the audio.As another example, a haptic output (or portion thereof) may beinitiated substantially before the auditory output, but at a weak oreven subliminal level, thereby priming the wearer to receive theauditory output.

FIG. 16 depicts an example schematic diagram of a wearable electronicdevice 1600. The wearable electronic device 1600 is an example of thewearable device 1108. As shown in FIG. 16, the device 1600 includes oneor more processing units 1602 that are configured to access a memory1604 having instructions stored thereon. The instructions or computerprograms may be configured to perform one or more of the operations orfunctions described with respect to the device 1600 (e.g., an alarmmodule 1110). For example, the instructions may be configured to controlor coordinate the operation of the various components of the device.Such components include, but are not limited to, display 1606, one ormore input/output components 1608, one or more communication channels1610, one or more sensors 1612, a speaker 1614, microphone 1616, abattery 1618, wireless power 1620, bio sensors 1622, and/or one or morehaptic feedback devices 1624. In some embodiments the speaker andmicrophone may be combined into a single unit and/or may share a commonport through a housing of the device.

The processing units 1602 of FIG. 16 may be implemented as anyelectronic device capable of processing, receiving, or transmitting dataor instructions. For example, the processing units 1602 may include oneor more of: a microprocessor, a central processing unit (CPU), anapplication-specific integrated circuit (ASIC), a digital signalprocessor (DSP), or combinations of such devices. As described herein,the term “processor” is meant to encompass a single processor orprocessing unit, multiple processors, multiple processing units, orother suitably configured computing element or elements.

The example electronic device may communicate with other electronicdevices either through a wired connection or wirelessly. Data may bepassed between devices, permitting one device to relay information toanother; control another; employ another's sensors, outputs, and/orinputs; and so on. FIG. 17 depicts a user 1700 wearing a firstelectronic device 1702 with a second electronic device 1704 in hispocket. Data may be wirelessly transmitted between the electronicdevices 1702, 1704, thereby permitting the user 1700 to receive, view,and interact with data from the second device 1704 by means of the firstelectronic device 1702. Thus, the user 1700 may have access to part orall of the second device's functionality through the first electronicdevice 1702 without actually needing to interact directly with thesecond device 1704. In some examples, the second electronic device 1704may be an example of the user device 104. The first electronic device1702 may be an example of the wearable device 1108.

Further, the electronic devices 1702, 1704 may cooperate not only toshare data, but to share functionality as well. For example, one of thetwo devices may incorporate a sensor, application, or function that theother lacks. The electronic device lacking such capabilities may requestthem from the other device, which may share wirelessly with therequesting device. Thus, multiple devices may operate together toprovide expanded functions, software, access, and the like between thetwo and ultimately to a user. As one non-limiting example, theelectronic device 1702 may be unable to place or receive telephone callswhile the second device 1704 may be able to do so. A user maynonetheless make and/or receive calls through the first device 1702,which may employ the second device 1704 to actually place or accept acall.

As another non-limiting example, an electronic device 1702 maywirelessly communicate with a sales terminal nearby, thus permitting auser to quickly and efficiently conduct a transaction such as selling,buying, or returning a good. The electronic device may use near fieldcommunications technology to perform these and other functions.

As mentioned above, a band may be connected to two electronic devicesand may serve as a wired communication path between the two. As anotherexample, the devices may communicate wirelessly, thereby permitting onedevice to relay information from a second to a user. This latter examplemay be particularly useful when the second is inaccessible.

Certain embodiments may incorporate one or more biometric sensors tomeasure certain physiological characteristics of a user. The device mayinclude a photoplesymogram sensor to determine a user's heart rate orblood oxygenation levels, for example. The device may also or insteadinclude electrodes to measure the body impedance of a user, which maypermit the device to estimate body fat percentages, the body'selectrical activity, body impedance, and so on. Also include bloodpressure, ultraviolet exposure, etc. Depending on the sensorsincorporated into or associated with the electronic device, a variety ofuser characteristics may be measured and/or estimated, therebypermitting different health data to be provided to a user. In someexamples, the sensed biometric data may be used, in part, to determinethe historic, current, and/or predicted activity data of the user.

Certain embodiments may be wirelessly charged. For example, an inductivecharging base may transmit power to an inductive receiver within thedevice in order to charge a battery of the device. Further, by varyingthe inductive field between the device and base, data may becommunicated between the two. As one simple non-limiting example, thismay be used to wake the base from a low-power sleep state to an activecharging state when the device is placed on the base. Other wirelesscharging systems may also be used (e.g., near field magnetic resonanceand radio frequency). Alternatively, the device may also employ wiredcharging through electrodes.

In certain embodiments, the device may include a rotary input, which maytake the form of a crown with a stem. The crown and stem may be rotatedto provide the rotary input. Rotation of the stem and/or crown may besensed optically, electrically, magnetically, or mechanically. Further,in some embodiments the crown and stem may also move laterally, therebyproviding a second type of input to the device.

The electronic device may likewise include one or more buttons. Thebutton(s) may be depressed to provide yet another input to the device.In various embodiments, the button may be a dome switch, rocker switch,electrical contact, magnetic switch, and so on. In some embodiments thebutton may be waterproof or otherwise sealed against the environment.

Various embodiments may include or otherwise incorporate one or moremotion sensors. A motion sensor may detect motion of the device andprovide, modify, cease, or otherwise affect a state, output, or input ofthe device or associated applications based at least in part on themotion. As non-limiting examples, a motion may be used to silence thedevice or acknowledge an alert generated by the device. Sample motionsensors include accelerometers, gyroscopic sensors, magnetometers, GPSsensors, distance sensors, and so on. Some embodiments may use a GPSsensor to facilitate or enable location and/or navigation assistance.

As shown in FIG. 16, the device 1600 may also include one or moreacoustic elements, including a speaker 1614 and/or a microphone 1616.The speaker 1614 may include drive electronics or circuitry and may beconfigured to produce an audible sound or acoustic signal in response toa command or input. Similarly, the microphone 1616 may also includedrive electronics or circuitry and is configured to receive an audiblesound or acoustic signal in response to a command or input. The speaker1614 and the microphone 1616 may be acoustically coupled to port oropening in the case that allows acoustic energy to pass, but may preventthe ingress of liquid and other debris.

Certain embodiments may incorporate an ambient light sensor. The ambientlight sensor may permit the device to sense a brightness of itsenvironment and adjust certain operational parameters accordingly. Forexample, the electronic device may modify a brightness of a display inresponse to the sensed ambient light. As another example, the electronicdevice may turn the display off if little or no light is sensed for aperiod of time.

These and other functions, operations, and abilities of the electronicdevice will be apparent upon reading the specification in its entirety.

Certain embodiments of a wearable electronic device may include one ormore sensors that can be used to calculate a health metric or otherhealth-related information. As one example, a wearable electronic devicemay function as a wearable health assistant that provides health-relatedinformation (whether real-time or not) to the user, authorized thirdparties, and/or an associated monitoring device.

FIG. 18 depicts an example electronic device 1800 having one or morebiometric sensors. The electronic device 1800 is an example of thewearable device 1108. As shown in FIG. 18, an array of light sources anda photodetector 1851-1854 may be disposed on the rear surface of thedevice 1800. In one example, the light sources 1851-1853 are formed fromlight emitting diode (LED) elements that are configured to emit lightinto a portion of the wearer's body (e.g., wrist). The photodetector1854 is shared between the multiple light sources 1851-1853 and isconfigured to receive light reflected from the body. The photodetectormay be formed from a photodiode material that is configured to produce asignal based at least in part on the received light. In oneimplementation, the signal produced by the photodetector 1854 is used tocompute a health metric associated with the wearer. In some cases, thelight sources 1851-1853 and the photodetector 1854 form aphotoplethysmography (PPG) sensor. The first light source 1851 mayinclude, for example, a green LED, which may be adapted for detectingblood perfusion in the body of the wearer. The second light source 1852may include, for example, an infrared LED, which may be adapted todetect changes in water content or other properties of the body. Thethird 1853 light source may be a similar type or different types of LEDelement, depending on the sensing configuration. The optical (e.g., PPG)sensor or sensors may be used to compute various health metrics,including, without limitation, a heart rate, a respiration rate, bloodoxygenation level, a blood volume estimate, blood pressure, or acombination thereof. One or more of the light sources 1851-1853 and thephotodetector 1854 may also be used for optical data transfer with abase or other device. While FIG. 18 depicts one example embodiment, thenumber of light sources and/or photodetectors may vary in differentembodiments. For example, another embodiment may use more than onephotodetector. Another embodiment may also use fewer or more lightsources than are depicted in the example of FIG. 18.

Also as shown in FIG. 18, the device 1800 includes multiple electrodes1831, 1832, 1833, 1834 that are located on or near external surfaces ofthe device 1800. In the present example, the device 1800 includes afirst electrode 1831 and a second electrode 1832 that are located on orproximate to a rear-facing surface of the device body 1810. In thisexample, the first electrode 1831 and the second electrode 1832 areconfigured to make electrical contact with the skin of the user wearingthe device 1800. In some cases, the first 1831 and second 1832electrodes are used to take an electrical measurement or receive anelectrical signal from the body of the user. As also shown in FIG. 18,the device 1800 may include a third electrode 1833 and a fourthelectrode 1834 that are located on or proximate to a perimeter of thecase of the device body 1810. In the present example, the third 1833 andfourth 1834 electrodes are configured to be contacted by one or morefingers of the user who is wearing or interacting with the device 1800.In some cases, the third 1833 and fourth 1834 electrodes are also usedto take an electrical measurement or receive an electrical signal fromthe body of the user. In some cases, the first 1831, second 1832, third1833, and fourth 1834 electrodes are all used to take a measurement orseries of measurements that can be used to compute another health metricof the user's body. Health metrics that may be computed using theelectrodes include, without limitation, heart functions (ECG, EKG),water content, body-fat ratios, galvanic skin resistance, andcombinations thereof.

In the configuration depicted in FIG. 18, the electronic device 1800includes one or more apertures in the case 1810. A light source1851-1854 may be disposed in each aperture. In one embodiment, eachlight source 1851-1853 is implemented as a light-emitting diode (LED).In the present example, the four apertures, three light sources1851-1853, and a single detector 1854 are used to form one or moresensors. Other embodiments can include any number of light sources. Forexample, two light sources can be used in some embodiments.

The light sources may operate at the same light wavelength range, or thelight sources can operate at different light wavelength ranges. As oneexample, with two light sources one light source may transmit light inthe visible wavelength range while the other light source can emit lightin the infrared wavelength range. With four light sources, two lightsources may transmit light in the visible wavelength range while theother two light sources can emit light in the infrared wavelength range.For example, in one embodiment, at least one light source can emit lightin the wavelength range associated with the color green while anotherlight source transmits light in the infrared wavelength range. When aphysiological parameter of the user is to be determined, the lightsources emit light toward the user's skin and the optical sensor sensesan amount of reflected light. In some cases, a modulation pattern orsequence may be used to turn the light sources on and off and sample orsense the reflected light.

Illustrative methods and systems for managing user device connectionsare described above. Some or all of these systems and methods may, butneed not, be implemented at least partially by architectures such asthose shown at least in FIGS. 1-18. While many of the embodiments aredescribed above with reference to personal, activity, and/orhealth-related information, it should be understood that any type ofuser information or non-user information (e.g., data of any type) may bemanaged using these techniques. Further, in the foregoing description,various non-limiting examples were described. For purposes ofexplanation, specific configurations and details are set forth in orderto provide a thorough understanding of the examples. However, it shouldalso be apparent to one skilled in the art that the examples may bepracticed without the specific details. Furthermore, well-known featureswere sometimes omitted or simplified in order not to obscure the examplebeing described.

The various embodiments further can be implemented in a wide variety ofoperating environments, which in some cases can include one or more usercomputers, computing devices or processing devices which can be used tooperate any of a number of applications. User or client devices caninclude any of a number of general purpose personal computers, such asdesktop or laptop computers running a standard operating system, as wellas cellular, wireless and handheld devices running mobile software andcapable of supporting a number of networking and messaging protocols.Such a system also can include a number of workstations running any of avariety of commercially-available operating systems and other knownapplications for purposes such as development and database management.These devices also can include other electronic devices, such as dummyterminals, thin-clients, gaming systems, and other devices capable ofcommunicating via a network.

Most embodiments utilize at least one network that would be familiar tothose skilled in the art for supporting communications using any of avariety of commercially-available protocols, such as TCP/IP, OSI, FTP,UPnP, NFS, CIFS, and AppleTalk. The network can be, for example, a localarea network, a wide-area network, a virtual private network, theInternet, an intranet, an extranet, a public switched telephone network,an infrared network, a wireless network, and any combination thereof.

In embodiments utilizing a network server, the network server can runany of a variety of server or mid-tier applications, including HTTPservers, FTP servers, CGI servers, data servers, Java servers, andbusiness application servers. The server(s) may also be capable ofexecuting programs or scripts in response to requests from user devices,such as by executing one or more applications that may be implemented asone or more scripts or programs written in any programming language,such as Java®, C, C# or C++, or any scripting language, such as Perl,Python or TCL, as well as combinations thereof. The server(s) may alsoinclude database servers, including without limitation thosecommercially available from Oracle®, Microsoft®, Sybase®, and IBM®.

The environment can include a variety of data stores and other memoryand storage media as discussed above. These can reside in a variety oflocations, such as on a storage medium local to (and/or resident in) oneor more of the computers or remote from any or all of the computersacross the network. In a particular set of embodiments, the informationmay reside in a storage-area network (SAN) familiar to those skilled inthe art. Similarly, any necessary files for performing the functionsattributed to the computers, servers or other network devices may bestored locally and/or remotely, as appropriate. Where a system includescomputerized devices, each such device can include hardware elementsthat may be electrically coupled via a bus, the elements including, forexample, at least one central processing unit (CPU), at least one inputdevice (e.g., a mouse, keyboard, controller, touch screen, or keypad),and at least one output device (e.g., a display device, printer, orspeaker). Such a system may also include one or more storage devices,such as disk drives, optical storage devices, and solid-state storagedevices such as RAM or ROM, as well as removable media devices, memorycards, flash cards, etc.

Such devices also can include a computer-readable storage media reader,a communications device (e.g., a modem, a network card (wireless orwired), an infrared communication device, etc.), and working memory asdescribed above. The computer-readable storage media reader can beconnected with, or configured to receive, a non-transitorycomputer-readable storage medium, representing remote, local, fixed,and/or removable storage devices as well as storage media fortemporarily and/or more permanently containing, storing, transmitting,and retrieving computer-readable information. The system and variousdevices also typically will include a number of software applications,modules, services, or other elements located within at least one workingmemory device, including an operating system and application programs,such as a client application or browser. It should be appreciated thatalternate embodiments may have numerous variations from that describedabove. For example, customized hardware might also be used and/orparticular elements might be implemented in hardware, software(including portable software, such as applets) or both. Further,connection to other computing devices such as network input/outputdevices may be employed.

Non-transitory storage media and computer-readable media for containingcode, or portions of code, can include any appropriate media known orused in the art, including storage media, such as, but not limited to,volatile and non-volatile, removable and non-removable media implementedin any method or technology for storage of information such ascomputer-readable instructions, data structures, program modules, orother data, including RAM, ROM, Electrically Erasable ProgrammableRead-Only Memory (EEPROM), flash memory or other memory technology,CD-ROM, DVD or other optical storage, magnetic cassettes, magnetic tape,magnetic disk storage or other magnetic storage devices, or any othermedium which can be used to store the desired information and which canbe accessed by a system device. Based at least in part on the disclosureand teachings provided herein, a person of ordinary skill in the artwill appreciate other ways and/or methods to implement the variousembodiments.

The specification and drawings are, accordingly, to be regarded in anillustrative rather than a restrictive sense. It will, however, beevident that various modifications and changes may be made thereuntowithout departing from the broader spirit and scope of the disclosure asset forth in the claims.

Other variations are within the spirit of the present disclosure. Thus,while the disclosed techniques are susceptible to various modificationsand alternative constructions, certain illustrated embodiments thereofare shown in the drawings and have been described above in detail. Itshould be understood, however, that there is no intention to limit thedisclosure to the specific form or forms disclosed, but on the contrary,the intention is to cover all modifications, alternative constructionsand equivalents falling within the spirit and scope of the disclosure,as defined in the appended claims.

The use of the terms “a” and “an” and “the” and similar referents in thecontext of describing the disclosed embodiments (especially in thecontext of the following claims) are to be construed to cover both thesingular and the plural, unless otherwise indicated herein or clearlycontradicted by context. The terms “comprising,” “having,” “including,”and “containing” are to be construed as open-ended terms (e.g., meaning“including, but not limited to,”) unless otherwise noted. The term“connected” is to be construed as partly or wholly contained within,attached to, or joined together, even if there is something intervening.

Recitation of ranges of values herein are merely intended to serve as ashorthand method of referring individually to each separate valuefalling within the range, unless otherwise indicated herein, and eachseparate value is incorporated into the specification as if it wereindividually recited herein. All methods described herein can beperformed in any suitable order unless otherwise indicated herein orotherwise clearly contradicted by context. The use of any and allexamples, or exemplary language (e.g., “such as”) provided herein, isintended merely to better illuminate embodiments of the disclosure anddoes not pose a limitation on the scope of the disclosure unlessotherwise claimed. No language in the specification should be construedas indicating any non-claimed element as essential to the practice ofthe disclosure.

Disjunctive language such as the phrase “at least one of X, Y, or Z,”unless specifically stated otherwise, is otherwise understood within thecontext as used in general to present that an item, term, etc., may beeither X, Y, or Z, or any combination thereof (e.g., X, Y, and/or Z).Thus, such disjunctive language is not generally intended to, and shouldnot, imply that certain embodiments require at least one of X, at leastone of Y, or at least one of Z to each be present.

Preferred embodiments of this disclosure are described herein, includingthe best mode known to the inventors for carrying out the disclosure.Variations of those preferred embodiments may become apparent to thoseof ordinary skill in the art upon reading the foregoing description. Theinventors expect skilled artisans to employ such variations asappropriate, and the inventors intend for the disclosure to be practicedotherwise than as specifically described herein. Accordingly, thisdisclosure includes all modifications and equivalents of the subjectmatter recited in the claims appended hereto as permitted by applicablelaw. Moreover, any combination of the above-described elements in allpossible variations thereof is encompassed by the disclosure unlessotherwise indicated herein or otherwise clearly contradicted by context.

All references, including publications, patent applications, andpatents, cited herein are hereby incorporated by reference to the sameextent as if each reference were individually and specifically indicatedto be incorporated by reference and were set forth in its entiretyherein.

What is claimed is:
 1. A system, comprising: a memory configured tostore computer-executable instructions; an input component; a processorin communication with the memory configured to execute thecomputer-executable instructions; and a display for presenting; a sleepalarm view of a graphical user interface during a scheduling phase of analarm setting sequence in response to a first input received at theinput component, the sleep alarm view presenting: an adjustable alarmindicator located in a first region of the sleep alarm view, theadjustable alarm indicator comprising a variable element having avariable annular shape comprising a first independently adjustableelement associated with a suggested bedtime and a second independentlyadjustable element associated with an alarm time, the variable elementmoveable to cause the first independently adjustable element and thesecond independently adjustable element to move dependently; and a sleepgraph located in a second region of the sleep alarm view, the sleepgraph comprising one or more linear indicators, each corresponding to aninterval, and indicating an amount of time slept during the interval anda sleep range corresponding to a period and comprising an earliestbedtime and a latest wake time.
 2. The system of claim 1, wherein, inresponse to a second input indicating selection of the firstindependently adjustable element and received at the input component,the first independently adjustable element moves independent of thesecond independently adjustable element and causes the adjustable alarmindicator to grow in size or decrease in size within a fixed annularrange corresponding to the adjustable alarm indicator.
 3. The system ofclaim 2, wherein, in response to the second input indicating selectionof the first independently adjustable element and received at the inputcomponent, the sleep range of the sleep graph is adjusted to include anupdated bedtime that is earlier than the earliest bedtime.
 4. The systemof claim 1, wherein, in response to a second input indicating selectionof the second independently adjustable element and received at the inputcomponent, the second independently adjustable element moves independentof the first independently adjustable element and causes the adjustablealarm indicator to grow in size or decrease in size within a fixedannular range corresponding to the adjustable alarm indicator.
 5. Thesystem of claim 1, wherein the sleep alarm view further presents asuggested bedtime indicator identifying the suggested bedtime and analarm time indicator identifying the alarm time.
 6. The system of claim1, wherein, in response to a second input indicating selection of thevariable element and received at the input component: the adjustablealarm indicator, comprising the first independently adjustable elementand the second independently adjustable element, rotates within a fixedannular range corresponding to the adjustable alarm indicator; thesuggested bedtime is updated; and the alarm time is updated.
 7. Thesystem of claim 1, wherein a length of the variable element correspondsto a sleep duration value.
 8. A computer-implemented method, comprising:receiving a first input at a device to initiate an alarm settingsequence; during the alarm setting sequence, presenting an adjustablealarm indicator located in a first region of a sleep alarm view of agraphical user interface, the adjustable alarm indicator comprising: avariable element comprising a variable annular shape; a bedtime elementassociated with a first end of the variable element and representing asuggested bedtime, movement of the bedtime element adjusting thesuggested bedtime and causing a circumferential length of the variableelement to increase or decrease; and a wake time element associated witha second end of the variable element and representing a scheduled timefor an alarm, movement of the wake time element adjusting the scheduledtime and causing the circumferential length of the variable element toincrease or decrease.
 9. The computer-implemented method of claim 8,wherein the alarm is a sleep alarm, the method further comprising:scheduling a wake alert of the sleep alarm based at least in part on thescheduled time; and scheduling a sleep alert of the sleep alarm forpresentation at a time prior to the suggested bedtime.
 10. Thecomputer-implemented method of claim 8, wherein the variable element,the bedtime element, and the wake time element are moveable within afixed annular range.
 11. The computer-implemented method of claim 10,wherein: movement of the wake time element comprises rotation of thewake time element relative to a center point of the fixed annular range;and movement of the bedtime element comprises rotation of the bedtimeelement relative to the center point of the fixed annular range.
 12. Thecomputer-implemented method of claim 8, wherein the first inputidentifies selection of an alarm application or identifies selection ofa sleep alarm selector.
 13. The computer-implemented method of claim 8,further comprising: receiving configuration information corresponding tothe alarm setting sequence, the configuration information comprising atleast one of a sleep duration, a first future time corresponding to thesuggested bedtime, or a second future time corresponding to thescheduled time; and generating the adjustable alarm indicator based atleast in part on the configuration information.
 14. Thecomputer-implemented method of claim 8, further comprising presenting asleep graph located in a second region of the sleep alarm view, thesleep graph comprising one or more linear indicators, each correspondingto a sleep interval and indicating an amount of time slept during thesleep interval, and a sleep range corresponding to a period andcomprising an earliest bedtime and a latest wake time.
 15. Thecomputer-implemented method of claim 8, wherein movement of the variableelement causes the variable element, the bedtime element, and the waketime element to rotate relative to a portion of the adjustable alarmindicator.
 16. The computer-implemented method of claim 8, wherein: thevariable element is moveable to cause the bedtime element and the waketime element to move dependently; the bedtime element is moveableindependent of the wake time element; and the wake time element ismoveable independent of the bedtime element.
 17. A computer-implementedmethod, comprising: providing a user interface for presentation at auser device, the user interface comprising: an adjustable alarmindicator located in a first region of the user interface, theadjustable alarm indicator comprising two independently adjustablevariable ends corresponding to a first time and a second time,respectively; and a sleep graph located in a second region of the userinterface and comprising a sleep range for a period; receiving, from theuser device, a first communication indicating an adjustment to a firstindependently adjustable variable end of the two independentlyadjustable variable ends, the adjustment causing a change to the firsttime; generating, based at least in part on the change to the firsttime, an updated sleep graph that comprises an updated sleep range forthe period and comprises at least one of an updated earliest bedtime oran updated latest wake time; and providing the updated sleep graph forpresentation at a second region of user interface of the user device.18. The computer-implemented method of claim 17, wherein: the methodfurther comprises receiving a different communication indicating adifferent adjustment to a second independently adjustable variable endof the two independently adjustable variable ends, the differentadjustment causing a different change to the second time; and generatingthe updated sleep graph is further based at least in part on thedifferent change to the second time.
 19. The computer-implemented methodof claim 17, wherein: the method further comprises receiving a differentcommunication indicating a different adjustment to a variable element ofthe adjustable alarm indicator, the different adjustment causing adifferent change to the first time and the second time; and generatingthe updated sleep graph is further based at least in part on thedifferent change to the first time and the second time.
 20. Thecomputer-implemented method of claim 17, wherein the adjustmentcomprises a user input that causes rotation of the first independentlyadjustable variable end relative to a portion of the adjustable alarmindicator.